package com.fyh.service;

import com.fyh.entity.job.DeliveryRecord;
import com.fyh.entity.job.JobPosition;
import com.fyh.entity.job.SimpleJobPosition;
import com.fyh.entity.user.SimpleCandidate;
import com.fyh.entity.user.Vitae;

import java.util.List;

public interface EmployerService {

    /**
     * 获取职位列表
     * @param employerId
     * @return
     */
    List<SimpleJobPosition> getSimpleJobPositionListByEmployerId(Long employerId);

    /**
     * 获取职位详情
     * @param positionId
     * @return
     */
    JobPosition getJobPositionDetail(Long positionId);

    /**
     * 更新职位
     * @param jobPosition
     */
    void updateJobPosition(JobPosition jobPosition);

    /**
     * 新增职位
     * @param jobPosition
     */
    void addJobPosition(JobPosition jobPosition);

    /**
     * 删除职位
     * @param positionId
     * @return
     */
    void deleteJobPosition(Long positionId);

    /**
     * 更新职位状态
     * @param positionId
     */
    void updateJobStatus(Integer status, Long positionId);

    /**
     * 获取职位下所有求职者
     * @param positionId
     * @return
     */
    List<SimpleCandidate> getSimpleCandidateList(Long positionId, String status);

    /**
     * 获取职位详情
     * @param candidateId
     * @return
     */
    Vitae getVitaeDetail(Long candidateId);

    /**
     * 更新投递状态
     * @param deliveryRecord
     */
    void updateDeliveryStatus(DeliveryRecord deliveryRecord);

    /**
     * 新增联系人
     * @param userId
     * @param contactId
     */
    void addChatContact(Long userId, Long contactId);
}
